 /**
 * Created with IntelliJ IDEA.
 * Description:
 * User: dings
 * Date: 2024-04-27
 * Time: 14:33
 */

public class Test {
     /**
      * pos1 起始位置
      * pos2 中间位置
      * pos3 目标位置
      */
    public static void hanio(int n,char pos1,char pos2,char pos3) {
        if(n == 1) {
            move(pos1,pos3);
            return;
        }
        hanio(n-1,pos1,pos3,pos2);
        move(pos1,pos3);
        hanio(n-1,pos2,pos1,pos3);
    }

     /**
      * @param pos1 起始位置
      * @param pos2 目标位置
      */
    public static void move(char pos1,char pos2) {
        System.out.print(pos1 +"->"+ pos2+" ");
    }
     public static void main(String[] args) {
         hanio(3,'A','B','C');
     }



    //在同一个类中定义多个方法：要求不仅可以求2个整数的最大值，还可以求3个小数的最大值
    public static int max(int a,int b) {
        return a > b ? a : b;
    }
    public static double max(double a,double b,double c) {
        double max = a > b ? a : b;
        max = max > c ? max : c;
        return max;
    }
    public static void main3(String[] args) {
        System.out.println(max(234,2324));
        System.out.println(max(23.43,233.23,12.1));
    }


   //在同一个类中,分别定义求两个整数的方法 和 三个小数之和的方法。 并执行代码，求出结果
    public static int sum(int a,int b) {
        return a+b;
    }
    public static double sum(double a,double b,double c) {
        return a+b+c;
    }
    public static void main2(String[] args) {
        int ret1 = sum(243,100);
        double ret2 = sum(32.233,1.1,0.1);
        System.out.println(ret1);
        System.out.println(ret2);
    }


 /*  创建方法求两个数的最大值max2，随后再写一个求3个数的最大值的函数max3。

    要求：在max3这个函数中，调用max2函数，来实现3个数的最大值计算*/
    public static int Max2(int a,int b) {
        return a > b ? a : b;
    }
    public static int Max3(int a,int b,int c) {
        return Max2(a,b) > c ? Max2(a,b) : c;
    }
    public static void main1(String[] args) {
        int n1 = 100;
        int n2 = 287;
        int n3 = 2366;
        int ret1 = Max2(n1,n2);
        System.out.println(ret1);
        int ret2 = Max3(n1,n2,n3);
        System.out.println(ret2);
    }
}
